package com.xored.glance.ui.controls.decor;

public abstract class Cell {

	private int column;

	public Cell(int column) {
		this.column = column;
	}

	public int getColumn() {
		return column;
	}

	@Override
	public int hashCode() {
		return getElement().hashCode() ^ column;
	}

	@Override
	public boolean equals(Object obj) {
		Cell cell = (Cell) obj;
		return cell.getElement().equals(this.getElement())
				&& cell.column == column;
	}

	protected abstract Object getElement();

}
